One of the popular features of software as a service (SaaS) is multi-tenancy. In a multi-tenanted application, a single application instance and a single database instance is shared between multiple tenants. A tenant is generally an organization registered as an independent entity in the multi-tenanted application. Typically, a tenant groups a number of users, who are stakeholders in the organization, and includes user accounts for the users for allowing the users to access the shared application instance and the shared database instance. If the same user is associated with multiple tenants, the user may hold multiple user accounts, typically one user account per tenant, in the multi-tenanted application.
The multi-tenanted application may offer tenant specific customizations allowing the tenants to customize their share of the application instance to fit their needs. Additionally, the multi-tenanted application may offer user specific customizations allowing the users to customize their share of the application instance. Benefits of the multi-tenanted application are usually twofold. On one hand, application deployment becomes easier as a single application instance has to be deployed, instead of hundreds or thousands. On the other hand, utilization rate of the hardware can be improved as multiple tenants share the same hardware resources. These two factors make it possible to reduce the overall costs of the application and this makes multi-tenant applications especially interesting for customers in the small and medium enterprise (SME) segment, as they often have limited financial resources and do not need the computational power of a dedicated server.